package net.aiform.template.pojo;

import java.io.Serializable;
import java.util.Date;
import java.util.Set;

import net.aiform.pojo.Identity;
import net.aiform.security.pojo.FormAccessController;

public class Template implements Serializable {
	private static final long serialVersionUID = -5684761830352662130L;
	private Identity identity;
	private Date recordStart;
	private Date recordEnd;
	private Date statisticsStart;
	private Date statisticsEnd;
	private int fieldsAmount;
	private FormAccessController recordAC;
	private FormAccessController statiticsAC;
	private String headRemark;
	private String footRemark;
	private boolean random;
	private boolean recordUser;
	private boolean recordIp;
	private boolean recordTime;
	private Set<Field> fields;

	public Template() {
		super();
		this.identity = new Identity();
	}

	public Set<Field> getFields() {
		return fields;
	}

	public int getFieldsAmount() {
		return fieldsAmount;
	}

	public String getFootRemark() {
		return footRemark;
	}

	public String getHeadRemark() {
		return headRemark;
	}

	public Identity getIdentity() {
		return identity;
	}

	public FormAccessController getRecordAC() {
		return recordAC;
	}

	public Date getRecordEnd() {
		return recordEnd;
	}

	public Date getRecordStart() {
		return recordStart;
	}

	public Date getStatisticsEnd() {
		return statisticsEnd;
	}

	public Date getStatisticsStart() {
		return statisticsStart;
	}

	public FormAccessController getStatiticsAC() {
		return statiticsAC;
	}

	public boolean isRandom() {
		return random;
	}

	public boolean isRecordIp() {
		return recordIp;
	}

	public boolean isRecordTime() {
		return recordTime;
	}

	public boolean isRecordUser() {
		return recordUser;
	}

	public void setFields(Set<Field> fields) {
		this.fields = fields;
	}

	public void setFieldsAmount(int fieldsAmount) {
		this.fieldsAmount = fieldsAmount;
	}

	public void setFootRemark(String footRemark) {
		this.footRemark = footRemark;
	}

	public void setHeadRemark(String headRemark) {
		this.headRemark = headRemark;
	}

	public void setIdentity(Identity identity) {
		this.identity = identity;
	}

	public void setRandom(boolean random) {
		this.random = random;
	}

	public void setRecordAC(FormAccessController recordAC) {
		this.recordAC = recordAC;
	}

	public void setRecordEnd(Date recordEnd) {
		this.recordEnd = recordEnd;
	}

	public void setRecordIp(boolean recordIp) {
		this.recordIp = recordIp;
	}

	public void setRecordStart(Date recordStart) {
		this.recordStart = recordStart;
	}

	public void setRecordTime(boolean recordTime) {
		this.recordTime = recordTime;
	}

	public void setRecordUser(boolean recordUser) {
		this.recordUser = recordUser;
	}

	public void setStatisticsEnd(Date statisticsEnd) {
		this.statisticsEnd = statisticsEnd;
	}

	public void setStatisticsStart(Date statisticsStart) {
		this.statisticsStart = statisticsStart;
	}

	public void setStatiticsAC(FormAccessController statiticsAC) {
		this.statiticsAC = statiticsAC;
	}

	@Override
	public String toString() {
		return "Template [fields=" + fields + ", fieldsAmount=" + fieldsAmount + ", footRemark=" + footRemark + ", headRemark=" + headRemark + ", identity=" + identity + ", recordAC=" + recordAC
				+ ", recordEnd=" + recordEnd + ", recordStart=" + recordStart + ", statisticsEnd=" + statisticsEnd + ", statisticsStart=" + statisticsStart + ", statiticsAC=" + statiticsAC + "]";
	}
}
